#Alumno: Guastavino Mariano

import unittest 



def suma (a,b):
	return a+b


def resta (a,b):
        
	if type(a)==int and type(b)==int:
		return a-b
	
	else:
		return "Error: Solo se pueden restar enteros"



def multiplicacion (a,b):

	if type(a)==int or type(b)==int:
		return (a*b)
	
	else:
		return "Error: Al menos un parametro debe ser entero"


def division (a,b):
	
	if b==0:
		return "Error: No se pueden dividir por 0"
        
	elif type(a)==int and type(b)==int:
		return (a/b)

	else:
		return "Error: Solo se pueden dividir enteros"
        




class test_Sum(unittest.TestCase):
	def test (self):
		self.assertEqual(suma(10,5),15)		
		self.assertEqual(suma("hola","Mundo"),"holaMundo")


class test_Resta(unittest.TestCase):
	def test (self):
		self.assertEqual(resta(20,10),10)
		self.assertEqual(resta("uno",2),"Error: Solo se pueden restar enteros")

		
class test_Mult(unittest.TestCase):
	def test (self):
		self.assertEqual(multiplicacion(8,5),40)
		self.assertEqual(multiplicacion("hola","Mundo"),"Error: Al menos un parametro debe ser entero")
		self.assertEqual(multiplicacion(2,"Mundo"),"MundoMundo")

		
class test_Div(unittest.TestCase):
	def test (self):
		self.assertEqual(division(5,0),"Error: No se pueden dividir por 0") 
		self.assertEqual(division("hola",2),"Error: Solo se pueden dividir enteros")
		self.assertEqual(division(5,5),1)



if __name__ == "__main__":
	unittest.main()  

